Towards Effective Model Checking

نویسندگان

  • Theo C. Ruys
  • Theodorus Cornelis Ruijs
چکیده

ions As mentioned above, the state space of a model M together with the property φ to be checked, is generally too big to be checked exhaustively. In order to reduce the state space of the model M, abstractions have to be made. The verification approach requires over approximations of the original model Mv: if the abstract model Mabs is proven to be correct with respect to the (safety) property φ, this should imply that the original model Mv is correct with respect to φ as well. Over approximations are usually obtained 40 Chapter 2 – Effective Modelling by replacing explicit choices in Mv by non-determinism in Mabs. For the debugging approach, under approximations of the model Md are sufficient: if an error is found in the abstract model Mabs, it is certain that the error also appears in the original model Md . Under approximations are usually obtained by removing behaviour (e.g. statements) from the original model Md . Partial Search For state spaces that are too big to be checked exhaustively, model checking tools often support options to partially search the state space. SPIN, for example, provides the so-called ‘bitstate’ hashing or supertrace technique [89], that can perform verifications with a relatively high coverage within a memory area that may be orders of magnitude smaller than required for exhaustive verifications. In general, the user of a model checker should try to exhaustively analyse the state space of the model M and the property φ. This especially holds for the verification approach. However, there may be cases where reduction of the state space by abstraction is too costly (i.e. time consuming) and where a partial search becomes a serious option. For the debugging approach the partial search mode nearly seems to be a natural choice. Because a partial search of the state space is in general much faster than its exhaustive counterpart, this mode is convenient when results are needed as fast as possible. Management of Results The verification approach requires the complete verification trajectory to be carefully controlled and managed: all verification results should be reproducible. This involves the management of all versions of the models, the properties, the verification runs, the verification results, etc. Without tool support, the quality of the verification process depends on the accuracy of the persons who conducted the verification. Chapter 3 will discuss the management problems of the verification approach in greater depth. The debugging approach is only interested in the errors found in the model and the corresponding error traces. This information should be automatically saved. Other aspects of the validation trajectory, however, are of less importance to the debugging approach. Switching Between the Two Approaches When the verification approach is being used and several errors are being exposed during the model checking process, it is of course possible to switch to the debugging approach to find as many bugs as possible. The other way around is more problematic. If the debugging approach does not reveal any errors, in general, the model Md has to be changed considerably to be used as a model Mv for the verification approach. The model Mv has a fixed level of abstraction and is optimised to be readable and accessible; all characteristics which

برای دانلود رایگان متن کامل این مقاله و بیش از 32 میلیون مقاله دیگر ابتدا ثبت نام کنید

ثبت نام

اگر عضو سایت هستید لطفا وارد حساب کاربری خود شوید

منابع مشابه

Towards Approximate Model Checking DC and PDC Specifications

DC has proved to be a promising tool for the specification and verification of functional requirements on the design of hard realtime systems. Many works were devoted to develop effective techniques for checking the models of hard real-time systems against DC specifications. DC model checking theory is still evolving and yet there is no available tools supporting practical verifications due to ...

متن کامل

Towards Symbolic Causality Checking using SAT-Solving

With the increasing size and complexity of modern safety critical embedded systems, the need for automated analysis methods is growing as well. Causality Checking is an automated technique for formal causality analysis of system models. In this paper we report on work in progress towards an Symbolic Causality Checking approach. The proposed approach is based on bounded model checking using SAT ...

متن کامل

NuSMV Version 2: BDD-based + SAT-based Symbolic Model Checking

NUSMV is a symbolic model checker originated from the reengineering, reimplementation and extension of SMV [11], version 2.4.4 (SMV from now on). NUSMV has been designed to be applicable in technology transfer projects: it is a well structured, open, flexible and documented platform for model checking, and is robust and close to industrial systems standards. This paper describes the new version...

متن کامل

A short introduction to two approaches in formal verification of security protocols: model checking and theorem proving

In this paper, we shortly review two formal approaches in verification of security protocols; model checking and theorem proving. Model checking is based on studying the behavior of protocols via generating all different behaviors of a protocol and checking whether the desired goals are satisfied in all instances or not. We investigate Scyther operational semantics as n example of this...

متن کامل

A Hybrid Meta-heuristic Approach to Cope with State Space Explosion in Model Checking Technique for Deadlock Freeness

Model checking is an automatic technique for software verification through which all reachable states are generated from an initial state to finding errors and desirable patterns. In the model checking approach, the behavior and structure of system should be modeled. Graph transformation system is a graphical formal modeling language to specify and model the system. However, modeling of large s...

متن کامل

Towards validated real-time software

We present a tool for the design and validation of embedded real-time applications. The tool integrates two approaches, the use of the synchronous programming language ESTEREL for design and the application of model-checking techniques for validation of real-time properties. Validation is carried out on a global formal model (timed automata) taking into account the effective implementation of t...

متن کامل

ذخیره در منابع من


  با ذخیره ی این منبع در منابع من، دسترسی به آن را برای استفاده های بعدی آسان تر کنید

عنوان ژورنال:

دوره   شماره 

صفحات  -

تاریخ انتشار 2001